当前位置:flash课件吧→免费FLASH教程之三(含实例教程)新页面 新改版 新气象

题 目:Flash制作一个模仿Acdsee浏览图片的效果

 

任何as代码如下:

  
//---------------------------------------------

  Stage.showMenu = false;

  Stage.scaleMode = "noScale";

  fscommand(allowscale, true);

  mapScale = map_mc._xscale;

  stageL = 0;

  stageT = 0;

  stageR = map_mc._width;

  stageB = map_mc._height;

  stageW = mask_mc._width;

  stageH = mask_mc._height;

  maxZoom = 800;

  minZoom = 50;

  initMapZoom();

  actionLabel = "放大";

  _root.onLoad = function() {

  var btnName = new Array();

  btnName = Array("放大", "缩小", "全图", "加大", "减小", "移动");

  btnNameLen = btnName.length;

  for (i=1; i<btnNameLen; i ) {

  ctrlbtn0.duplicateMovieClip("ctrlbtn" i, i);

  }

  for (i=0; i<btnNameLen; i ) {

  ctrlbtns = eval("ctrlbtn" i);

  ctrlbtns.btn_name.text = btnName[i];

  ctrlbtns._x = i*(ctrlbtn0._width 5) 10;

  ctrlbtns._y = ctrlbtn0._y;

  ctrlbtns.vars = btnName[i];

  ctrlbtns.onRollOver = function() {

  this._alpha = 60;

  };

  ctrlbtns.onRollOut = function() {

  this._alpha = 100;

  };

  ctrlbtns.onRelease = function() {

  actionLabel = this.vars;

  if (this.vars == "全图") {

  initMapZoom();

  }

  if (this.vars == "加大") {

  var mapx = ((stageL stageR)/2-map_mc._x)/mapScale;

  var mapy = ((stageT stageB)/2-map_mc._y)/mapScale;

  if (mapScale*1.2<maxZoom) {

  mapZoom(mapScale*1.2, mapx, mapy);

  } else {

  mapZoom(maxZoom, mapx, mapy);

  }

  }

  if (this.vars == "减小") {

  var mapx = ((stageL stageR)/2-map_mc._x)/mapScale;

  var mapy = ((stageT stageB)/2-map_mc._y)/mapScale;

  if (mapScale*.8>minZoom) {

  mapZoom(mapScale*.8, mapx, mapy);

  } else {

  mapZoom(minZoom, mapx, mapy);

  }

  }

  };

  }

  };

  function initMapZoom() {

  var msW = map_mc._width/stageW;

  var msH = map_mc._height/stageH;

  var mapBi = (msW<msH) ? msW : msH;

  map_mc._x = stageL;

  map_mc._y = stageT;

  mapScale = mapScale/mapBi;

  map_mc._xscale = mapScale;

  map_mc._yscale = mapScale;

  }

  var mouseObj = new Object();

  Mouse.addListener(mouseObj);

  mouseObj.onMouseDown = function() {

  if (_xmouse>stageL && _xmouse<stageR && _ymouse>stageT && _ymouse<stageB) {

  if (actionLabel == "放大" || actionLabel == "缩小") {

  box_x = _xmouse;

  box_y = _ymouse;

  createEmptyMovieClip("box_mc", btnNameLen 1);

  with (box_mc) {

  lineStyle(1, 0xff0000, 80);

  moveTo(0, 0);

  lineTo(0, 1000);

  lineTo(1000, 1000);

  lineTo(1000, 0);

  lineTo(0, 0);

  _width = 1;

  _height = 1;

  }

  mapW = map_mc._width;

  mapH = map_mc._height;

  box_mc.onEnterFrame = function() {

  this._width = Math.abs(_xmouse-box_x);

  this._height = Math.abs(_ymouse-box_y);

  this._x = _xmouse<box_x ? _xmouse : box_x;

  this._y = _ymouse<box_y ? _ymouse : box_y;

  };

  }

  if (actionLabel == "移动") {

  left = stageR-map_mc._width;

  top = stageB-map_mc._height;

  right = 0;

  bottom = 0;

  map_mc.startDrag(false, left, top, right, bottom);

  }

  }

  };

  mouseObj.onMouseUp = function() {

  if (box_mc != undefined) {

  boxW = box_mc._width box_mc._x>stageR ? stageR-box_mc._x : box_mc._width;

  boxH = box_mc._height box_mc._y>stageB ? stageB-box_mc._y : box_mc._height;

  mouseX = box_mc._width != 0 ? box_mc._x : _xmouse;

  mouseY = box_mc._height != 0 ? box_mc._y : _ymouse;

  if (actionLabel == "放大") {

  large();

  }

  if (actionLabel == "缩小") {

  small();

  }

  box_mc.removeMovieClip();

  }

  if (actionLabel == "移动") {

  map_mc.stopDrag();

  }

  };

  function large() {

  _l1 = boxW == 0 ? 1.2 : stageR/boxW;

  _l2 = boxH == 0 ? 1.2 : stageB/boxH;

point = _l1<_l2 ? _l1 : _l2;

  var mapx = ((mouseX _xmouse)/2-map_mc._x)/mapScale;

  var mapy = ((mouseY _ymouse)/2-map_mc._y)/mapScale;

  if (map_mc._xscale<maxZoom) {

  if (mapScale*point<maxZoom) {

  mapZoom(mapScale*point, mapx, mapy);

  } else {

  mapZoom(maxZoom, mapx, mapy);

  }

  }

  }

  function small() {

  _l1 = boxW == 0 ? 0.8 : boxW/stageR;

  _l2 = boxH == 0 ? 0.8 : boxH/stageB;

  point = _l1>_l2 ? _l1 : _l2;

  var mapx = (_xmouse-map_mc._x)/mapScale;

  var mapy = (_ymouse-map_mc._y)/mapScale;

  if (map_mc._xscale>minZoom) {

  if (mapScale*point>minZoom) {

  mapZoom(mapScale*point, mapx, mapy);

  } else {

  mapZoom(minZoom, mapx, mapy);

  }

  }

  }

  function mapZoom(map_scale, map_x, map_y) {

  map_mc._xscale = map_scale;

  map_mc._yscale = map_scale;

  mapScale = map_scale;

  map_mc._x = (stageL stageR)/2-map_x*mapScale;

  map_mc._y = (stageT stageB)/2-map_y*mapScale;

  //---------------------------------------------------

  map_mc._x = map_mc._x map_mc._width<stageR ? stageR-map_mc._width : map_mc._x;

  map_mc._x = map_mc._x>0 ? 0 : map_mc._x;

  map_mc._y = map_mc._y map_mc._height<stageB ? stageB-map_mc._height : map_mc._y;

  map_mc._y = map_mc._y>0 ? 0 : map_mc._y;

  }

 

 

 

 

 

期刊论文服务

合作期刊
学报期刊
 
获奖证书办理
本站已改版成新站 课件115学培吧http://www.kj115.com
免费FLASH教程之三(含实例教程)内容导航
为Flash建搜索内容索引 Flash广告播放器研发 Flash引领互动动画潮流 Flash趣味鼠标特效大作战
Flash MX 2004滚动文本框的两种做法 给Flash文件添加历史记录 Flash中的常见术语(详解) 用笛卡尔公式画出的一颗心状图
播放器拖动进度条制作 水滴效果动画,Flash制作中的AS问题 中秋寄相思 自制Flash贺卡 用SWiSHmax轻松制作精彩Flash片头
用autocad制作一个量角器_autocad教程 Flash百叶窗制作教程 Flash制作实用别致的导航菜单 Flash实用技巧之音乐时间显示篇
Flash中的电影艺术之镜头技巧教程
Flash AS游戏教程:人物及控制 PS+FLASH制作马赛克效果 如何在论坛中,链接自已的FLASH动画呢!
FLASH中的抛运动中的竖直上抛运动 鼠标感应花儿转动效果 FLASH效果篇:闪光效果 自己动手制作手机Flash主题动画
晨雾蒙蒙动画效果,Flash制作方法 Flash制作简单MP3播放器 Flash制作滚动广告图片效果 Flash MX动画制作实例教程-文字处理-设置段落属性
电闪雷鸣、小雨纷飞的效果,Flash制作方法 Flash实现用鼠标调整窗口的大小 AS3学习源码--打气球 关于主动画中load动画和动态文本的共同运用问题
关于倒计时程序的准确性解决方法之一 Flash加载外部文件的方法与技巧集合 Tween类:图片缓动浏览效果 FLASH中加载外部音乐代码&部分难找AS教程
Flash与Java Servlet结合实现网上对战 用AS3实再FLASH游戏的上下左右移动 FLASH中加载外部音乐代码 Flash动态文本框中加载HTML格式文本
Flash制作环绕的立体图片效果动画 FLASH CS3中的FLA形式组件制作教程 酷!Flash聊天室的实现 更多相关内容总目录(200个)》》》
国家信息产业部备案专号:鄂ICP08005724返回顶部
本站推荐最佳分辨率:1024X768在线咨询台
声明:我站除课件制作动画制作培训以外,所有内容均属于免费资源。本站部分资源来自于网络,由本站收集整理,如有侵权请联系本站管理(QQ444860709 手机13339817386),我站会在三个工作日内处理。